package com.lzq.springbook.mapper;

import com.lzq.springbook.model.BookInfo;
import com.lzq.springbook.model.PageResult;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.springframework.transaction.annotation.TransactionManagementConfigurationSelector;

import java.util.List;

@Mapper
public interface BookInfoMapper {
    @Insert("insert into book_info(book_name,author,`count`,price,publish,status) values " +
            "(#{bookName},#{author},#{count},#{price},#{publish},#{status})")
    void insertBook(BookInfo bookInfo);

    @Select("select * from book_info where status != 0 order by id desc limit #{offset},#{pageSize}")
    List<BookInfo> queryBookListByPage(int offset, int pageSize);

    @Select("select count(1) from book_info where status!=0")
    Integer count();
    @Select("select * from book_info where status != 0 and id = #{bookId}")
    BookInfo getBookInfo(Integer bookId);

    Integer updateBook(BookInfo bookInfo);

    Boolean batchDelete(List<Integer> list);
}
